package com.redepronik.negosys.invfac.entity;

import java.io.Serializable;
import java.util.List;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;

/**
 * The persistent class for the motivotraslado database table.
 * 
 */
@Entity
@Table(schema = "invfac", name = "motivotraslado")
@NamedQuery(name = "Motivotraslado.findAll", query = "SELECT m FROM Motivotraslado m")
public class Motivotraslado implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@SequenceGenerator(allocationSize = 1, name = "MOTIVOTRASLADO_MOTIVOTRASLADOID_GENERATOR", sequenceName = "INVFAC.MOTIVOTRASLADO_MOTIVOTRASLADOID_SEQ")
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "MOTIVOTRASLADO_MOTIVOTRASLADOID_GENERATOR")
	@Column(unique = true, nullable = false)
	private Integer motivotrasladoid;

	@Column(nullable = false, length = 100)
	private String nombre;

	// bi-directional many-to-one association to Guiaremision
	@OneToMany(orphanRemoval = true, cascade = CascadeType.ALL, mappedBy = "motivotraslado")
	private List<Guiaremision> guiaremisions;

	public Motivotraslado() {
	}

	public Guiaremision addGuiaremision(Guiaremision guiaremision) {
		getGuiaremisions().add(guiaremision);
		guiaremision.setMotivotraslado(this);

		return guiaremision;
	}

	public List<Guiaremision> getGuiaremisions() {
		return this.guiaremisions;
	}

	public Integer getMotivotrasladoid() {
		return this.motivotrasladoid;
	}

	public String getNombre() {
		return this.nombre;
	}

	public Guiaremision removeGuiaremision(Guiaremision guiaremision) {
		getGuiaremisions().remove(guiaremision);
		guiaremision.setMotivotraslado(null);

		return guiaremision;
	}

	public void setGuiaremisions(List<Guiaremision> guiaremisions) {
		this.guiaremisions = guiaremisions;
	}

	public void setMotivotrasladoid(Integer motivotrasladoid) {
		this.motivotrasladoid = motivotrasladoid;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

}